Skip to content

Add RRTMGP and surface coupling to convection-permitting suite#422

Open
kuanchihwang wants to merge 6 commits into
ESCOMP:mainfrom
kuanchihwang:staging/add-rrtmgp-to-cps
Open

Add RRTMGP and surface coupling to convection-permitting suite#422
kuanchihwang wants to merge 6 commits into
ESCOMP:mainfrom
kuanchihwang:staging/add-rrtmgp-to-cps

Conversation

@kuanchihwang

Copy link
Copy Markdown
Collaborator

Tag name

TBD

Originator(s)

kuanchihwang

Description (include the issue title, and the keyword ['closes', 'fixes', 'resolves'] followed by the issue number)

This PR adds RRTMGP and surface coupling to the convection-permitting suite. It also applies a blanket fix to the inconsistent tendency handling across various MMM physics schemes.

List all namelist files that have been modified

None

List all files eliminated and why

None

List all files added and what they do

None

List all existing files that have been modified, and describe the changes

M       schemes/mmm/bl_gwdo_compat.meta
    * Fix inconsistent tendency behaviors in MMM physics schemes
M       schemes/mmm/bl_mynn_compat.meta
M       schemes/mmm/cu_ntiedtke_compat.meta
M       schemes/mmm/mmm_physics_compat.F90
    * Update standard names and add interstitial for RRTMGP
    * Fix inconsistent tendency behaviors in MMM physics schemes
M       schemes/mmm/mmm_physics_compat.meta
    * Update standard names and add interstitial for RRTMGP
    * Fix metadata
    * Fix inconsistent tendency behaviors in MMM physics schemes
M       test/test_suites/suite_convection_permitting.xml
    * Add RRTMGP to convection-permitting suite
    * Update standard names and add interstitial for RRTMGP
    * Enable surface coupling
    * Fix inconsistent tendency behaviors in MMM physics schemes
M       test/unit-test/tests/mmm/mmm_physics_compat_tests.pf
    * Add unit tests

List all automated tests that failed, as well as an explanation for why they were not fixed

All passed.

Is this an answer-changing PR? If so, is it a new physics package, algorithm change, tuning change, etc?

Yes, but only for the convection-permitting suite.

If yes to the above question, describe how this code was validated with the new/modified features

Configure, build, and run CAM-SIMA with the MPASCP compset.

@kuanchihwang
kuanchihwang marked this pull request as ready for review July 13, 2026 18:14
@kuanchihwang
kuanchihwang requested a review from nusbaume July 13, 2026 18:14

@nusbaume nusbaume left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @kuanchihwang! I just had one optional request and a comment covering the discussion we had in our meeting. Otherwise these changes look good to me!


<scheme>mmm_physics_compat</scheme>

<!-- Begin section RRTMGP -->

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I might note here that RRTMGP is the radiation scheme (as it may not be obvious to new users):

Suggested change
<!-- Begin section RRTMGP -->
<!-- Begin section RRTMGP (radiation scheme) -->

Comment on lines +407 to +412
! Save pending tendencies to final tendencies.
!
! The reason for this mechanism is to mitigate the inconsistent tendency behaviors across various MMM physics schemes.
! Although some schemes correctly accumulate their tendencies with others, there are certain schemes that outright
! overwrite the tendencies from others. Instead of wrestling with the problematic schemes individually like MPAS does,
! which is very error-prone, a suite-level scheme is introduced to blanketly enforce the correct behavior.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm totally happy with this for now, but long-term is there a chance that we can eventually fix the problematic schemes so that this helper scheme is no longer needed? Definitely not a high priority, but it does seem like a way to reduce the total amount of variables (and thus memory) that is needed for a simulation.

@nusbaume
nusbaume requested a review from peverwhee July 22, 2026 18:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants